Electronic text display and processing system

ABSTRACT

An electronic Test Display and Processing System having a display a memory, and a manually operable data and control function entry device for interactive text processing by an operator via a keyboard whereby text entered on the display is modifiable under the control of the operator. By utilization of a position indicator or cursor which is positionable by the operator on the display screen at the desired position with respect to the text the operator can perform text editing functions such as adding a character, deleting a character, adding or deleting a line of text, selecting a block of text from the display for deletion or insertion into another page of text displayed on the screen, or erasing text. The text editing functions are accomplished by means of a processor receiving commands indicative of operator action as well as commands indicative of internal signals generated in proper time sequence to perform the functions selected by the operator. The memory includes a display memory capable of storing information in coded form for displaying a full &#39;&#39;&#39;&#39;page&#39;&#39;&#39;&#39; of text; a character buffer for storing information indicative of two characters within a line of text, the two characters being the character currently being displayed as well as the character previously displayed; and a line buffer capable of storing two of the lines of textual information, one line being the line of text currently being displayed while the other line is the line of text previously displayed. Multiplexing and data selection means are provided for sequentially reconfiguring the flow of information through the various storage means within the memory to accomplish the text editing functions.

Goldman et a1.

[ ELECTRONIC TEXT DISPLAY AND PROCESSING SYSTEM [75] Inventors: ArnoldJ. Goldman; Stephen L. Kurtin, both of Sherman Oaks; Carver A. Mead,Pasadena, all of Calif.

{73] Assignee: Lexitron Corporation, Chatsworth,

Calif.

[22] Filed: Jan. 18, 1973 [21] Appl. No.: 324,776

[52] 0.8. CI. 340/1725 [51] lnt. Cl G06k 15/02, 606k 15/20 [58] Field ofSearch 340/1725 [56] References Cited UNITED STATES PATENTS 3,648.2713/1972 McConnell et al. 340/1725 3,706,075 12/1972 Fredrickson et a1.340/1725 3,501,746 3/1970 Vosbury 340/1725 3,454,929 7/1969 Hynes et a1340/1725 31110302 10/ I971 Rahenkump et all 340/1725 3.5401112 11/1970Ehrman 340/1725 3.7141136 1/1973 Manly H 340/1725 3,618,032 11/1971(ioldsbcrry et ul. 340/1725 Primary Examiner-Paul .I. Henon AssistantExaminerPaul R. Woods [57] ABSTRACT An electronic test display andprocessing system having a display. a memory. and a manually operabledata and control function entry device for interactive text processingby an operator via a keyboard whereby text entered on the display ismodifiable under the control of the operator. By utilization of aposition indicator or cursor which is positionable by the operator onthe display screen at the desired position with respect to the text theoperator can perform text editing functions such as adding a character.deleting a character. adding or deleting a line of text. selecting ablock of text from the display for deletion or insertion into anotherpage of text displayed on the screen. or erasing text.

The text editing functions are accomplished by means of a processorreceiving commands indicative of operator action as well as commandsindicative of internal signals generated in proper time sequence toperform the functions selected by the operator. The memory includes adisplay memory capable of storing information in coded form fordisplaying a full page of text; a character buffer for storinginformation indicative of two characters within a line of text, the twocharacters being the character currently being displayed as well as thecharacter previously displayed; and a line buffer capable of storing twoof the lines of textual information, one line being the line of textcurrently being displayed while the other line is the line of textpreviously displayed. Multiplexing and data selection means are providedfor sequentially reconfiguring the flow of information through thevarious storage means within the memory to accomplish the text editingfunctions.

15 Claims, 88 Drawing Figures 12 18 32 34 3G 48 38 r A "M 1' I r E /2%,?l p A PosmoN MAGNETIC 31 ll l (ONWOG i 01:. L r I WDICMDR iNDICAYOREDlT/MERGE TAPE SELELJHNSERT r H q t. was, ,7 l

f o A r A all s as I it] i 7 I a l l 7 s e e c l A TEEN '6 CIEERETCTYTEa u s i 7 g OPERATOR l T ADDRESS AND COMMAND Bus 2 I l i [l V 7 7 T iMlN6 Bus Q I l is, v

y t I 1 s l F 3 ii ii ii l v a l i 1 7 7 WW n V l 1 l ,Q ZZQE MEMORYaims l JUSTIFV ma PAGWATE i PEWTER l l l l ft 7 7 i l f 7 3 i f 10 45 4442 4o 50 PATENTEDNAY 7 I974 SHEET 07 0F 42 SPECIAL CONTROL. ANDINDICATOR BUS DISPLAY TIME Tag T T T2 T3 T4 T5 T6 T7 wRITE wRITE BEGIN HQQ QN INTO INTO THE 39 sELEcT MEMORY PAST ADDREss HYPHEN HYPHEN RAsEBLANK END H LOAD LOAD EJDICATOR gfl' g LrggIECATOR Egg? sELEcT COLUMNcOLuMN BUS I INDICATOR INDICATOR CuRsoR CURSOR BURIED INCREMENT/ 45CONTINUE DECREMENT JUSTIFY Q E QL Qgfi gg j woRD UNIT SPACE COMMANDCURSOR CURSOR CURSOR INDICATOR COUNTER CONTINUE BLINK CONTINUE DECREMENTINCRE'MENT EEESQ INCREMENT 46 WORD DISPLAY wORD Row COLUMN CURSOR COLUMNINDICATOR INDICATOR CURSOR cuRsOR To ZERO CURSOR MEMORY PRESENT 49 QQEEQBBQ HONLED ON LINE Is QQ TL LI FOLLOWED INDICATOR ggg Ls BY A UNE RIGHTAT RIGHT HAND NON- DISPL JUSTHZ'Y HA UNIT SPACE 5O LIMIT AT CHARinfigfilggfi HF ENQASSAPH MARGIN CouNT END OF INDICATOR CONTROL A O Kgggfj JUSTIFY KEYBOARD) zONE EOIT/ AcTIvE ACTIvE ACTIvE END MERGE BLANKBLANK BLANK PROTECT PROTECT CHAR ADD eusv INDICATOR INDICATOR INDICATORINDICATOR INDICATOR EYBOARD INDICATOR NON LEFT HAND INHIBIT AuTO- CHAR52 ggg A QQ KQ MARGIN E QQ CLEAN-UP MARGIN DELETE Y NDCATOR INDICATORCARD JUSTIFY INDICATOR PATENTEIIIIII 7 PECIAL CONTROL AND INDICATOR BUSRETRACE FLYBACK 1?; MAC I MAC 2 MAC 5 OTHER 3 INHIBIT Row ADD (T MEMORYLINE 0 (T END MEMORY MEM E 59 ACTIVATE HYPHEN INHIBIT ERASE LINE 59 (T(T LIGHT CONTROL RET-W- MAC4IT RET' FLY MAC 3 -T HECIRCULATE LOWER 4U BUER FOR ONE LINE (T TOGGLE UPPER AND 46 LOWER BUFFER (T DISPLAY VERTICAL49 RING THE BELL MARGIN (TII INHIBIT Row COUNT SIGNAL (T LOWER VERTICALMARG'N INDICATOR MAC o-T DISPLAY MEMORY (T END OF TERM CLEAN-UP 50DI$PLAYABLE REGION MERGE 2 (T UPPER VERTICAL MARGIN DISPLAY MEMORY (TMEMORY BUSY (T 7- C TROBE IND T 52 s cuReDR LINE 59 (T5) LINE 5s IND(T6) Row DELETE (T3) PATENTEBIIII 7 I974 SHEET RING (HE BELL KEYBD (T3)SPECIAL CONTROL AND INDICATOR Bus RETRACE FLYBACK 11g MAC I we 2 Mn 3OTHER AUTO MARGIN MACS-T 39 INHIBIT Row ADD (T PRINTER BUSY (T PRINTBUSY MAC 9T3 INHIBIT TAPE COMMAND(T|) TAPE BUSY T 4| INHIBIT ROLL-UP (TTAPE AFTER a) READ'NG PAGE s TAPE WRITING (T RESET TAPE INHIBIT (T7)INCR, Row CURSOR w/PLATEII MACQTZ DECREMENT ROW UNIT CHAR DELETE CURSORW/PLATEN MAc9-T 45 FROM KYBD- (T RESET COL TO ZERO MACQ'T DISPLAY DECTAB RESET ROW CURSOR(0)MAC9- 6 INHIBIT OVERSTRIKE (T5) RESET ROW CURSOR(5B) MDC9-T7 46 l UNIT cI-IAFI ADD FROM 49 SGNAUB) c sTRoeE IND (T3)TERMINATE CLEAN-UP LOAD ROW cuRsoR 5O MERGE (T2) MAC9-T3 BACKSPACEINDICATOR SPACING sETwEEN (T51 LINES MACOTZ VERT MARGIN SET IT 5' (TI)(SPA)CE BAR INDICATOR MERGE TEXT (T 2 T 6 SELECT TEXT (T21 3 PRINT (T7)MEMORY BUSY (T I 52 CHAR IND (T3) DoN T ISSUE COMMAND DEc TAB sET (T2)PATENTED W 7 9 sum 10 nr 42 TRANS U7 2 RECEIVING COMMAND CGWAND E;QLTRB'NG cARD OR DATA ON PIN No. COMMENT I ANY MEMORY OHARAcTER cRINI(T7) AFTER ADDRESSING THE mm mm ADD MEMORY U ANY MEMORY cI-IARAcTERcPINz (T7) AFTER ADDRESSING THE mm mm OELETE MEMORY ANY MEMORY CHARACTERCPIN3 (T) AFTER ADDRESSING THE III DOUBLE T cARD CARD DELETE MEMORY mANY MEMORY ROw ADD CPINS (T7) AFTER ADDRESSING THE OARD cARD MEMORYMACZIY RETRAcE y ANY cOMMuNIcATIONS Row OARD BUS DELETE FLYBACK-C PIN 52m ANY MEMORY 'flfJ cm 55 (T5) AFTER ADDRESSING THE OARD cARD MEMORY DOwNSHIFT DOWN AFTER ADDRESSING THE III 22% g'gg'g STEP LowER 55 (T5) MEMORYFOLLOWING THE BUFFER cOIvIMANn INITATE SHIFT DOwN COMMAND m ANY MEMORYINITATE SHIFT CPIN 5? (T5) AFTER ADDRESSING THE cARD OARD OF COMMANDMEMORY SHIFT u MEWRQ EEEESWIJ'EE Y Pl 1: 22% gig? STOP LOWER C N56 (T?)INITIATE SHIFT UP auFFER COMMAND COMMAND ATENTEDIIII 7 I974 SHEET 12 8F42 DATA BUS 2, GI ZHTQJZ HEIGHT ROM/ DATA SELECTOR HIGH HIGH 8 BITPARALLEL -I92 MULTIPLEXER IN/ PARALLEL OUT REGISTER A CLOCK T :IcTIvEBLANK 9'4 I m CODE T0 DATA eus AT T4 5 02 I74 I98 I96 I73 r KCR DECODERACTIVE ECARRIAGE R)ET) RS g g KUL UNDERLINE 52 L,- l |5 6 I57 I97 READ tKUL ENABLE Q 2 4 WORD READ/ I59 REGISTER SELECT Q WRITE I Ma A WRITEDECODE I ENABLE 1 *5, READ LCHAR SELECT l -OVF 0 I62 2 I50 m 85* I55 T gTIE W54 m m I I 'a ?BIT ALPHA NUMBERIC CODE PLUS 8TH BIT SPACE BIT KMSKEYBOARD CHARACTER STROBE

1. In an electronic text processing system having a display means and anoperator controlled keyboard sub-system for entering into the systemencoded data indicative of character information to be displayed and forentering signals indiciative of text manipulation functions to beperformed by a processor on the character data so entered, thecombination comprising: a memory having X lines of memory of Y storagelocations per line; means for connecting said keyboard sub-system tosaid memory whereby encoded data entered in said keyboard is stored insaid memory; first and second line buffers each having Y storagelocations; a character buffer having at least one character storagelocation; means for interconnecting said memory, first line buffer,second line buffer and character buffer whereby the encoded data storedin a predetermined line of said memory is connected from saidpredetermined line of memory to said first line buffer to said characterbuffer and then from said character buffer to said second line bufferand back to said predetermined line of said memory; and control meansresponsive to signals indicative of text manipulating functions selectedby the operator for interconnecting said memory, first line buffer,second line buffer and character generator whereby the encoded data isconnected from said character buffer to a preselected one of said firstline buffer, said second line buffer and said predetermined line ofmemory.
 2. The combination according to claim 1 further includingencoding means for generating a code indicative of a blank, said controlmeans including means for inserting such code into at least one of saidgiven line of memory, said first line buffer and said second linebuffer.
 3. The combination according to claim 2 wherein said controlmeans includes toggle means for selectively interchanging said first andsecond line buffers.
 4. The combination according to claim 1 furtherincluding timing means for generating a first pulse indicative of thetime for a retrace cycle of the display means and a second pulseindicative of a flyback cycle of the display means, said control meansbeing enabled at least in part by at least one of said first and secondpulses.
 5. The combination according to claim 4 further including rowcounting means for providing a count corresponding to the line of memoryflowing through said first line buffer, said control means being enabledat least in part by predetermined ones of said counts.
 6. Thecombination according to claim 5 further including operator controlledmeans for selecting a line on the display means corresponding to aselected line in memory and other means responsive to said row countingmeans for generating a row compare pulse when the selected line ofmemory is flowing through said first line buffer, said control meansbeing enabled at least in part by said row compare pulse.
 7. Thecombination according to claim 6 wherein said operator controlled meansprovides a visual indicator on the display of the display means and saidsystem further includes means for generating a column compare pulse whenthe position of the visible indicator within the selected linecorresponds to the character storage location in memory, said controlmeans being enabled at least in part by said column compare pulse.
 8. Inan electronic text processing system having a display means, an operatorcontrolled keyboard sub-system for entering into the system encoded dataindicative of character information to be displayed and for enteringsignals indicative of text manipulation functions to be performed by aprocessor on the character data so entered, operator controlled meansfor directing a visible indicator within the text on the display to aparticular character location within a line of text, the combinationcomprising: a memory communicating with said keyboard sub-system forstoring the encoded data so entered; other storage means coupled to saidmemory for passage therethrough of the encoded data from the memory andback to the memory; means for generating a position signal indicative ofthe line in memory corresponding to the position of the visibleindicator in the line selected on the display; margin means for storingthe orientation of the first displayable character within at least oneof said selected line, the first displayable line of text above saidselected line, and the first displayable line of text below saidselected line; control means responsive to a signal selected by theoperator and said position signal for selectively and sequentiallyreconfiguring the passage of the encoded data through said other storagemeans for transferring at least a portion of the contents of one of saidselected line and the line after said selected line to the other of suchlines; and margin restoration means operative in response to saidcontrol means for determining the character storage location of thefirst displayable character in the line after said selected line inresponse of said margin storing means.
 9. The combination according toclaim 8 wherein said means for generating a position signal generates aposition signal indicative of the character storage location within theline of memory, said control means opens a line in memory immediatelyafter said selected line, transferring the contents of each line afterthe selected line to the next succeeding line, said control means thentransferring the contents of the line of text within memory to the rightof the visible indicator to the newly opened line under control of saidmargin restoration means with the same margin orientation as theselected line.
 10. The combination according to claim 8 furtherincluding means for indicating the position of the last displayablecharacter within the selected line, word defining means for sensing aword in the line of text after said selected line, said control meansbeing further responsive to said last displayable character means andsaid word defining means for transferring to said selected line one wordfrom the line after said selected line, said margin restoration meansmaintaining the same character storage location of the first displayablecharacter of the balance of the line after said selected line after thetransfer of said word.
 11. The combination according to claim 10 furtherincluding means for defining a right hand margin limit zone, the wordsbeing transferred to the selected line a word at a time until the lastdisplayable character of the last word so transferred is within theright hand margin limit zone or the line after said selected line isexhausted of textual information.
 12. The combination according to claim11 further including visual indicator incrementing means, saidincrementing meAns being operative in response to the last displayablecharacter of the last word transferred to the selected line being withinthe right hand margin limit zone, said incrementing means thenrepositioning the visible indicator to the next displayable line of texton the display.
 13. The combination according to claim 12 furtherincluding inhibiting means for inhibiting the incrementing of thevisible indicator when the last displayable character of the last wordtransferred is beyond the right hand margin limit zone.
 14. Thecombination according to claim 8 further including means for determiningwhether the line in memory after the selected line contains textualinformation, blank line counting means operable in response to suchmeans, means for operating said control means in response to the absenceof textual information for restructuring the memory until the line aftersaid selected line contains textual information, and other meansresponsive to the completion of the transfer for re-initiating saidcontrol means to re-insert the number of blank lines in memory betweensaid selected line and the first line of text thereafter under thecontrol of said blank line counting means.
 15. The combination accordingto claim 10 further including means for defining a right hand marginlimit zone, said control means being operative for one cycle as a wordis transferred, and other means are provided for recycling said controlmeans successively until the last word so transferred is at leastpartially within said right hand margin limit zone.